﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using BLL;

namespace ChamCongMain.Form
{
    public partial class frmTinhLuong : DevExpress.XtraEditors.XtraForm
    {
        public Delegates.RefeshGrid LoadData;
        public frmTinhLuong()
        {
            InitializeComponent();
        }

        private void simpleButton2_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void btnTinhLuong_Click(object sender, EventArgs e)
        {
            int thang, nam;
            try {
                thang = int.Parse(cboThang.Text);
            }
            catch {
                MessageBox.Show("Tháng không hợp lệ","Lỗi",MessageBoxButtons.OK,MessageBoxIcon.Error);
                return;
            }
            try
            {
                nam = int.Parse(cboNam.Text);
            }
            catch
            {
                MessageBox.Show("Năm không hợp lệ", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            BLL.LuongBLL lbll = new BLL.LuongBLL();

            if (lbll.CheckThangNam(thang, nam))
            {
                BLL.PhanCongBLL pvbll = new BLL.PhanCongBLL();
                List<BLL.PhanCong> lphancong = pvbll.GetPhanCongByMonthYear(thang, nam);
                BLL.Luong luong;
                BLL.LuongBLL lll = new BLL.LuongBLL();
                foreach (BLL.PhanCong pc in lphancong)
                {
                    luong = new BLL.Luong();
                    luong.CongNhanId = pc.CongNhanId;
                    luong.Thang = pc.Thang;
                    luong.Nam = pc.Nam;
                    luong.TienLuong = (pc.CongDoan.TriGia * (pc.SoLuong == null ? 0 : pc.SoLuong)) - (luong.TamUng == null ? 0 : luong.TamUng);
                    luong.NgayNhan = DateTime.Now;
                    lll.InsertLuong(luong);
                }
                LoadData(lll.GetAllLuong());
            }
            else
            {
                MessageBox.Show("Lương tháng này đã tồn tại trong csdl ", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }

        }
    }
}